package com.foxnicweb.app.constants.db;

import com.github.foxnic.sql.meta.DBField;
import com.github.foxnic.sql.meta.DBTable;
import com.github.foxnic.sql.meta.DBDataType;



/**
 * @since 2023-05-19 15:08:50
 * @author 李方捷 , leefangjie@qq.com
 * 数据库描述文件
 * 此文件由工具自动生成，请勿修改。若表结构变动，请使用工具重新生成。
*/

public class PatentTables {
	
	/**
	 * 专利案
	*/
	public static class PAT_PATENT extends DBTable {
		
		/**
		 * 表名
		*/
		public static final String $NAME = "pat_patent";
		
		/**
		 * 主键
		*/
		public static final DBField ID = new DBField(DBDataType.LONG , "id","id","主键","主键",true,false,false);
		
		/**
		 * 案号
		*/
		public static final DBField SERIAL = new DBField(DBDataType.STRING , "serial","serial","案号","案号",false,false,true);
		
		/**
		 * 案件名称
		*/
		public static final DBField TITLE = new DBField(DBDataType.STRING , "title","title","案件名称","案件名称",false,false,true);
		
		/**
		 * 提案名称
		*/
		public static final DBField PROPOSAL_TITLE = new DBField(DBDataType.STRING , "proposal_title","proposalTitle","提案名称","提案名称",false,false,true);
		
		/**
		 * ⽴案⽇期
		*/
		public static final DBField CREATION_TIME = new DBField(DBDataType.DATE , "creation_time","creationTime","⽴案⽇期","⽴案⽇期",false,false,true);
		
		/**
		 * 申请日期
		*/
		public static final DBField APPLICATION_DATE = new DBField(DBDataType.DATE , "application_date","applicationDate","申请日期","申请日期",false,false,true);
		
		/**
		 * 案件状态
		*/
		public static final DBField PROJECT_STAGE = new DBField(DBDataType.STRING , "project_stage","projectStage","案件状态","案件状态",false,false,true);
		
		/**
		 * 案件等级
		*/
		public static final DBField LEVEL = new DBField(DBDataType.STRING , "level","level","案件等级","案件等级",false,false,true);
		
		/**
		 * 客户
		*/
		public static final DBField CUSTOMER = new DBField(DBDataType.STRING , "customer","customer","客户","客户",false,false,true);
		
		/**
		 * 销售
		*/
		public static final DBField SALES = new DBField(DBDataType.STRING , "sales","sales","销售","销售",false,false,true);
		
		/**
		 * 流程
		*/
		public static final DBField FLOW = new DBField(DBDataType.STRING , "flow","flow","流程","流程",false,false,true);
		
		/**
		 * 申请号
		*/
		public static final DBField APPLICATION_NUMBER = new DBField(DBDataType.STRING , "application_number","applicationNumber","申请号","申请号",false,false,true);
		
		/**
		 * 案件类型;1发明专利 2实用新型 3外观设计
		*/
		public static final DBField SUBTYPE = new DBField(DBDataType.STRING , "subtype","subtype","案件类型","1发明专利 2实用新型 3外观设计",false,false,true);
		
		/**
		 * 申请国家
		*/
		public static final DBField AREA = new DBField(DBDataType.STRING , "area","area","申请国家","申请国家",false,false,true);
		
		/**
		 * 申请方式
		*/
		public static final DBField APPLICATION_MANNER = new DBField(DBDataType.STRING , "application_manner","applicationManner","申请方式","申请方式",false,false,true);
		
		/**
		 * IPR
		*/
		public static final DBField IPR = new DBField(DBDataType.STRING , "ipr","ipr","IPR","IPR",false,false,true);
		
		/**
		 * 申请人
		*/
		public static final DBField APPLICANTS = new DBField(DBDataType.STRING , "applicants","applicants","申请人","申请人",false,false,true);
		
		/**
		 * 发明人
		*/
		public static final DBField INVENTORS = new DBField(DBDataType.STRING , "inventors","inventors","发明人","发明人",false,false,true);
		
		/**
		 * 联系人
		*/
		public static final DBField CONTACT = new DBField(DBDataType.STRING , "contact","contact","联系人","联系人",false,false,true);
		
		/**
		 * 送件代理⼈
		*/
		public static final DBField PATENT_AGENT = new DBField(DBDataType.STRING , "patent_agent","patentAgent","送件代理⼈","送件代理⼈",false,false,true);
		
		/**
		 * 送件代理所
		*/
		public static final DBField AGENCY = new DBField(DBDataType.STRING , "agency","agency","送件代理所","送件代理所",false,false,true);
		
		/**
		 * 服务类型
		*/
		public static final DBField SERVICE = new DBField(DBDataType.STRING , "service","service","服务类型","服务类型",false,false,true);
		
		/**
		 * 订单号
		*/
		public static final DBField ORDER_SERIAL = new DBField(DBDataType.STRING , "order_serial","orderSerial","订单号","订单号",false,false,true);
		
		/**
		 * 备注
		*/
		public static final DBField REMARK = new DBField(DBDataType.STRING , "remark","remark","备注","备注",false,false,true);
		
		/**
		 * 实质审查
		*/
		public static final DBField IS_SUBEXAM_REQUEST = new DBField(DBDataType.INTEGER , "is_subexam_request","isSubexamRequest","实质审查","实质审查",false,false,true);
		
		/**
		 * 状态
		*/
		public static final DBField STATUS = new DBField(DBDataType.INTEGER , "status","status","状态","状态",false,false,true);
		
		public PAT_PATENT() {
			this.init($NAME,"专利案" , ID , SERIAL , TITLE , PROPOSAL_TITLE , CREATION_TIME , APPLICATION_DATE , PROJECT_STAGE , LEVEL , CUSTOMER , SALES , FLOW , APPLICATION_NUMBER , SUBTYPE , AREA , APPLICATION_MANNER , IPR , APPLICANTS , INVENTORS , CONTACT , PATENT_AGENT , AGENCY , SERVICE , ORDER_SERIAL , REMARK , IS_SUBEXAM_REQUEST , STATUS);
		}
		public static final PAT_PATENT $TABLE=new PAT_PATENT();
	}
	
	/**
	 * 审批流程附件
	*/
	public static class PAT_PATENT_FILE extends DBTable {
		
		/**
		 * 表名
		*/
		public static final String $NAME = "pat_patent_file";
		
		/**
		 * 主键
		*/
		public static final DBField ID = new DBField(DBDataType.LONG , "id","id","主键","主键",true,false,false);
		
		/**
		 * 案件ID
		*/
		public static final DBField PATENT_ID = new DBField(DBDataType.LONG , "patent_id","patentId","案件ID","案件ID",false,false,true);
		
		/**
		 * 流程节点
		*/
		public static final DBField NODE_ID = new DBField(DBDataType.STRING , "node_id","nodeId","流程节点","流程节点",false,false,true);
		
		/**
		 * 附件ID
		*/
		public static final DBField FILE_ID = new DBField(DBDataType.STRING , "file_id","fileId","附件ID","附件ID",false,false,true);
		
		/**
		 * 租户ID
		*/
		public static final DBField TENANT_ID = new DBField(DBDataType.STRING , "tenant_id","tenantId","租户ID","租户ID",false,false,true);
		
		/**
		 * 创建人ID
		*/
		public static final DBField CREATE_BY = new DBField(DBDataType.STRING , "create_by","createBy","创建人ID","创建人ID",false,false,true);
		
		/**
		 * 创建时间
		*/
		public static final DBField CREATE_TIME = new DBField(DBDataType.DATE , "create_time","createTime","创建时间","创建时间",false,false,true);
		
		/**
		 * 修改人ID
		*/
		public static final DBField UPDATE_BY = new DBField(DBDataType.STRING , "update_by","updateBy","修改人ID","修改人ID",false,false,true);
		
		/**
		 * 修改时间
		*/
		public static final DBField UPDATE_TIME = new DBField(DBDataType.DATE , "update_time","updateTime","修改时间","修改时间",false,false,true);
		
		/**
		 * 是否已删除
		*/
		public static final DBField DELETED = new DBField(DBDataType.INTEGER , "deleted","deleted","是否已删除","是否已删除",false,false,false);
		
		/**
		 * 删除人ID
		*/
		public static final DBField DELETE_BY = new DBField(DBDataType.STRING , "delete_by","deleteBy","删除人ID","删除人ID",false,false,true);
		
		/**
		 * 删除时间
		*/
		public static final DBField DELETE_TIME = new DBField(DBDataType.DATE , "delete_time","deleteTime","删除时间","删除时间",false,false,true);
		
		/**
		 * 数据版本号
		*/
		public static final DBField VERSION = new DBField(DBDataType.INTEGER , "version","version","数据版本号","数据版本号",false,false,false);
		
		public PAT_PATENT_FILE() {
			this.init($NAME,"审批流程附件" , ID , PATENT_ID , NODE_ID , FILE_ID , TENANT_ID , CREATE_BY , CREATE_TIME , UPDATE_BY , UPDATE_TIME , DELETED , DELETE_BY , DELETE_TIME , VERSION);
		}
		public static final PAT_PATENT_FILE $TABLE=new PAT_PATENT_FILE();
	}
	
	/**
	 * 审批流程相关人员
	*/
	public static class PAT_PATENT_MEMBER extends DBTable {
		
		/**
		 * 表名
		*/
		public static final String $NAME = "pat_patent_member";
		
		/**
		 * 主键
		*/
		public static final DBField ID = new DBField(DBDataType.LONG , "id","id","主键","主键",true,false,false);
		
		/**
		 * 案件ID
		*/
		public static final DBField PATENT_ID = new DBField(DBDataType.LONG , "patent_id","patentId","案件ID","案件ID",false,false,true);
		
		/**
		 * 员工ID
		*/
		public static final DBField EMP_ID = new DBField(DBDataType.STRING , "emp_id","empId","员工ID","员工ID",false,false,true);
		
		/**
		 * 成员类型
		*/
		public static final DBField MEMBER_TYPE = new DBField(DBDataType.STRING , "member_type","memberType","成员类型","成员类型",false,false,true);
		
		/**
		 * 姓名
		*/
		public static final DBField NAME = new DBField(DBDataType.STRING , "name","name","姓名","姓名",false,false,true);
		
		public PAT_PATENT_MEMBER() {
			this.init($NAME,"审批流程相关人员" , ID , PATENT_ID , EMP_ID , MEMBER_TYPE , NAME);
		}
		public static final PAT_PATENT_MEMBER $TABLE=new PAT_PATENT_MEMBER();
	}
	
	/**
	 * 审批流程实例
	*/
	public static class PAT_PATENT_PROCESS extends DBTable {
		
		/**
		 * 表名
		*/
		public static final String $NAME = "pat_patent_process";
		
		/**
		 * 主键，与 pat_patent 表的ID值一致
		*/
		public static final DBField ID = new DBField(DBDataType.LONG , "id","id","主键","与 pat_patent 表的ID值一致",true,false,false);
		
		/**
		 * 流程实例ID
		*/
		public static final DBField PROCESS_INSTANCE_ID = new DBField(DBDataType.STRING , "process_instance_id","processInstanceId","流程实例ID","流程实例ID",false,false,true);
		
		/**
		 * 审批状态
		*/
		public static final DBField STATUS = new DBField(DBDataType.STRING , "status","status","审批状态","审批状态",false,false,true);
		
		/**
		 * 创建人ID
		*/
		public static final DBField CREATE_BY = new DBField(DBDataType.STRING , "create_by","createBy","创建人ID","创建人ID",false,false,true);
		
		/**
		 * 创建时间
		*/
		public static final DBField CREATE_TIME = new DBField(DBDataType.DATE , "create_time","createTime","创建时间","创建时间",false,false,true);
		
		/**
		 * 修改人ID
		*/
		public static final DBField UPDATE_BY = new DBField(DBDataType.STRING , "update_by","updateBy","修改人ID","修改人ID",false,false,true);
		
		/**
		 * 修改时间
		*/
		public static final DBField UPDATE_TIME = new DBField(DBDataType.DATE , "update_time","updateTime","修改时间","修改时间",false,false,true);
		
		/**
		 * 是否已删除
		*/
		public static final DBField DELETED = new DBField(DBDataType.INTEGER , "deleted","deleted","是否已删除","是否已删除",false,false,false);
		
		/**
		 * 删除人ID
		*/
		public static final DBField DELETE_BY = new DBField(DBDataType.STRING , "delete_by","deleteBy","删除人ID","删除人ID",false,false,true);
		
		/**
		 * 删除时间
		*/
		public static final DBField DELETE_TIME = new DBField(DBDataType.DATE , "delete_time","deleteTime","删除时间","删除时间",false,false,true);
		
		/**
		 * 数据版本号
		*/
		public static final DBField VERSION = new DBField(DBDataType.INTEGER , "version","version","数据版本号","数据版本号",false,false,false);
		
		/**
		 * 是否交底
		*/
		public static final DBField IS_GOT_BASE = new DBField(DBDataType.INTEGER , "is_got_base","isGotBase","是否交底","是否交底",false,false,true);
		
		/**
		 * 继续,无交底继续
		*/
		public static final DBField NO_BASE_CONTINUE = new DBField(DBDataType.INTEGER , "no_base_continue","noBaseContinue","继续","无交底继续",false,false,true);
		
		/**
		 * 事务所能否完成
		*/
		public static final DBField CAN_OFFICE_DONE = new DBField(DBDataType.INTEGER , "can_office_done","canOfficeDone","事务所能否完成","事务所能否完成",false,false,true);
		
		/**
		 * 材料是否完整_A
		*/
		public static final DBField IS_MATERIAL_COMPLETE = new DBField(DBDataType.INTEGER , "is_material_complete","isMaterialComplete","材料是否完整","A",false,false,true);
		
		/**
		 * 代理能否完成
		*/
		public static final DBField CAN_AGENT_DONE = new DBField(DBDataType.INTEGER , "can_agent_done","canAgentDone","代理能否完成","代理能否完成",false,false,true);
		
		/**
		 * 是否定稿
		*/
		public static final DBField FINALIZED = new DBField(DBDataType.INTEGER , "finalized","finalized","是否定稿","是否定稿",false,false,true);
		
		/**
		 * 案件类型;1发明专利 2实用新型 3外观设计
		*/
		public static final DBField SUBTYPE = new DBField(DBDataType.STRING , "subtype","subtype","案件类型","1发明专利 2实用新型 3外观设计",false,false,true);
		
		/**
		 * 客户名称
		*/
		public static final DBField CUSTOMER_NAME = new DBField(DBDataType.STRING , "customer_name","customerName","客户名称","客户名称",false,false,true);
		
		/**
		 * 是否检索
		*/
		public static final DBField RETRIEVAL = new DBField(DBDataType.INTEGER , "retrieval","retrieval","是否检索","是否检索",false,false,true);
		
		public PAT_PATENT_PROCESS() {
			this.init($NAME,"审批流程实例" , ID , PROCESS_INSTANCE_ID , STATUS , CREATE_BY , CREATE_TIME , UPDATE_BY , UPDATE_TIME , DELETED , DELETE_BY , DELETE_TIME , VERSION , IS_GOT_BASE , NO_BASE_CONTINUE , CAN_OFFICE_DONE , IS_MATERIAL_COMPLETE , CAN_AGENT_DONE , FINALIZED , SUBTYPE , CUSTOMER_NAME , RETRIEVAL);
		}
		public static final PAT_PATENT_PROCESS $TABLE=new PAT_PATENT_PROCESS();
	}
	
	/**
	*/
	public static class PAT_PATENT_PROCESS_ROLE extends DBTable {
		
		/**
		 * 表名
		*/
		public static final String $NAME = "pat_patent_process_role";
		
		/**
		 * 主键
		*/
		public static final DBField ID = new DBField(DBDataType.STRING , "id","id","主键","主键",true,false,false);
		
		/**
		 * 审批ID，pat_patent_process.id
		*/
		public static final DBField PATENT_PROCESS_ID = new DBField(DBDataType.LONG , "patent_process_id","patentProcessId","审批ID","pat_patent_process.id",false,false,true);
		
		/**
		 * 角色类型
		*/
		public static final DBField ROLE_TYPE = new DBField(DBDataType.STRING , "role_type","roleType","角色类型","角色类型",false,false,true);
		
		/**
		 * 员工ID
		*/
		public static final DBField EMPLOYEE_ID = new DBField(DBDataType.STRING , "employee_id","employeeId","员工ID","员工ID",false,false,true);
		
		/**
		 * 创建人ID
		*/
		public static final DBField CREATE_BY = new DBField(DBDataType.STRING , "create_by","createBy","创建人ID","创建人ID",false,false,true);
		
		/**
		 * 创建时间
		*/
		public static final DBField CREATE_TIME = new DBField(DBDataType.DATE , "create_time","createTime","创建时间","创建时间",false,false,true);
		
		/**
		 * 修改人ID
		*/
		public static final DBField UPDATE_BY = new DBField(DBDataType.STRING , "update_by","updateBy","修改人ID","修改人ID",false,false,true);
		
		/**
		 * 修改时间
		*/
		public static final DBField UPDATE_TIME = new DBField(DBDataType.DATE , "update_time","updateTime","修改时间","修改时间",false,false,true);
		
		/**
		 * 是否已删除
		*/
		public static final DBField DELETED = new DBField(DBDataType.INTEGER , "deleted","deleted","是否已删除","是否已删除",false,false,false);
		
		/**
		 * 删除人ID
		*/
		public static final DBField DELETE_BY = new DBField(DBDataType.STRING , "delete_by","deleteBy","删除人ID","删除人ID",false,false,true);
		
		/**
		 * 删除时间
		*/
		public static final DBField DELETE_TIME = new DBField(DBDataType.DATE , "delete_time","deleteTime","删除时间","删除时间",false,false,true);
		
		/**
		 * 数据版本号
		*/
		public static final DBField VERSION = new DBField(DBDataType.INTEGER , "version","version","数据版本号","数据版本号",false,false,false);
		
		public PAT_PATENT_PROCESS_ROLE() {
			this.init($NAME,"" , ID , PATENT_PROCESS_ID , ROLE_TYPE , EMPLOYEE_ID , CREATE_BY , CREATE_TIME , UPDATE_BY , UPDATE_TIME , DELETED , DELETE_BY , DELETE_TIME , VERSION);
		}
		public static final PAT_PATENT_PROCESS_ROLE $TABLE=new PAT_PATENT_PROCESS_ROLE();
	}
	
	/**
	 * 与对方系统的账户对照关系
	*/
	public static class PAT_USER_MAPPING extends DBTable {
		
		/**
		 * 表名
		*/
		public static final String $NAME = "pat_user_mapping";
		
		/**
		 * 主键
		*/
		public static final DBField ID = new DBField(DBDataType.LONG , "id","id","主键","主键",true,true,false);
		
		/**
		 * 对方系统账户ID
		*/
		public static final DBField REMOTE_USER_ID = new DBField(DBDataType.LONG , "remote_user_id","remoteUserId","对方系统账户ID","对方系统账户ID",false,false,true);
		
		/**
		 * 本地账户ID
		*/
		public static final DBField LOCAL_USER_ID = new DBField(DBDataType.STRING , "local_user_id","localUserId","本地账户ID","本地账户ID",false,false,true);
		
		/**
		 * 同步时间
		*/
		public static final DBField SYNC_TIME = new DBField(DBDataType.DATE , "sync_time","syncTime","同步时间","同步时间",false,false,true);
		
		public PAT_USER_MAPPING() {
			this.init($NAME,"与对方系统的账户对照关系" , ID , REMOTE_USER_ID , LOCAL_USER_ID , SYNC_TIME);
		}
		public static final PAT_USER_MAPPING $TABLE=new PAT_USER_MAPPING();
	}
}